package org.massi.imslp.query;

/**
 * Wraps information for the piece
 */
public interface IWorkInfo
{

	/**
	 * The piece score
	 * 
	 * @return the piece instruments (2 violins, 1 cello etc etc)
	 */
	String getScore();


	/**
	 * Date of composition, as string
	 * 
	 * @return when the piece has been composed, as string
	 */
	String getDateOfComposition();


	/**
	 * Piece key
	 * 
	 * @return key of the piece TODO create enum for key
	 */
	String getKey();


	/**
	 * Opus number
	 * 
	 * @return piece opus number
	 */
	String getOpusNumber();


	/**
	 * Piece style
	 * 
	 * @return piece style (classical, baroque...)
	 */
	String getStyle();


	/**
	 * Date of publication
	 * 
	 * @return when the piece has been first published, as string
	 */
	String getDateOfPublication();


	/**
	 * Who the piece has been dedicated to
	 * 
	 * @return piece dedication
	 */
	String getDedication();


	/**
	 * Any comments
	 * 
	 * @return comments
	 */
	String getComments();


	/**
	 * Title of the piece
	 * 
	 * @return the title of the piece, which usually contain the opus number as well
	 */
	String getTitle();
}
